/*
	Copyright (c) 2004-2009, The Dojo Foundation All Rights Reserved.
	Available via Academic Free License >= 2.1 OR the modified BSD license.
	see: http://dojotoolkit.org/license for details
*/


if(!dojo._hasResource["dojox.fx._base"]){
dojo._hasResource["dojox.fx._base"]=true;
dojo.provide("dojox.fx._base");
dojo.require("dojo.fx");
dojo.mixin(dojox.fx,{anim:dojo.anim,animateProperty:dojo.animateProperty,fadeTo:dojo._fade,fadeIn:dojo.fadeIn,fadeOut:dojo.fadeOut,combine:dojo.fx.combine,chain:dojo.fx.chain,slideTo:dojo.fx.slideTo,wipeIn:dojo.fx.wipeIn,wipeOut:dojo.fx.wipeOut});
dojox.fx.sizeTo=function(_1){
var _2=_1.node=dojo.byId(_1.node);
var _3=_1.method||"chain";
if(!_1.duration){
_1.duration=500;
}
if(_3=="chain"){
_1.duration=Math.floor(_1.duration/2);
}
var _4,_5,_6,_7,_8,_9=null;
var _a=(function(n){
return function(){
var cs=dojo.getComputedStyle(n),_b=cs.position,w=cs.width,h=cs.height;
_4=(_b=="absolute"?n.offsetTop:parseInt(cs.top)||0);
_6=(_b=="absolute"?n.offsetLeft:parseInt(cs.left)||0);
_8=(w=="auto"?0:parseInt(w));
_9=(h=="auto"?0:parseInt(h));
_7=_6-Math.floor((_1.width-_8)/2);
_5=_4-Math.floor((_1.height-_9)/2);
if(_b!="absolute"&&_b!="relative"){
var _c=dojo.coords(n,true);
_4=_c.y;
_6=_c.x;
n.style.position="absolute";
n.style.top=_4+"px";
n.style.left=_6+"px";
}
};
})(_2);
var _d=dojo.animateProperty(dojo.mixin({properties:{height:function(){
_a();
return {end:_1.height||0,start:_9};
},top:function(){
return {start:_4,end:_5};
}}},_1));
var _e=dojo.animateProperty(dojo.mixin({properties:{width:function(){
return {start:_8,end:_1.width||0};
},left:function(){
return {start:_6,end:_7};
}}},_1));
var _f=dojo.fx[(_1.method=="combine"?"combine":"chain")]([_d,_e]);
return _f;
};
dojox.fx.slideBy=function(_10){
var _11=_10.node=dojo.byId(_10.node),top,_12;
var _13=(function(n){
return function(){
var cs=dojo.getComputedStyle(n);
var pos=cs.position;
top=(pos=="absolute"?n.offsetTop:parseInt(cs.top)||0);
_12=(pos=="absolute"?n.offsetLeft:parseInt(cs.left)||0);
if(pos!="absolute"&&pos!="relative"){
var ret=dojo.coords(n,true);
top=ret.y;
_12=ret.x;
n.style.position="absolute";
n.style.top=top+"px";
n.style.left=_12+"px";
}
};
})(_11);
_13();
var _14=dojo.animateProperty(dojo.mixin({properties:{top:top+(_10.top||0),left:_12+(_10.left||0)}},_10));
dojo.connect(_14,"beforeBegin",_14,_13);
return _14;
};
dojox.fx.crossFade=function(_15){
var _16=_15.nodes[0]=dojo.byId(_15.nodes[0]),op1=dojo.style(_16,"opacity"),_17=_15.nodes[1]=dojo.byId(_15.nodes[1]),op2=dojo.style(_17,"opacity");
var _18=dojo.fx.combine([dojo[(op1==0?"fadeIn":"fadeOut")](dojo.mixin({node:_16},_15)),dojo[(op1==0?"fadeOut":"fadeIn")](dojo.mixin({node:_17},_15))]);
return _18;
};
dojox.fx.highlight=function(_19){
var _1a=_19.node=dojo.byId(_19.node);
_19.duration=_19.duration||400;
var _1b=_19.color||"#ffff99",_1c=dojo.style(_1a,"backgroundColor");
if(_1c=="rgba(0, 0, 0, 0)"){
_1c="transparent";
}
var _1d=dojo.animateProperty(dojo.mixin({properties:{backgroundColor:{start:_1b,end:_1c}}},_19));
if(_1c=="transparent"){
dojo.connect(_1d,"onEnd",_1d,function(){
_1a.style.backgroundColor=_1c;
});
}
return _1d;
};
dojox.fx.wipeTo=function(_1e){
_1e.node=dojo.byId(_1e.node);
var _1f=_1e.node,s=_1f.style;
var dir=(_1e.width?"width":"height"),_20=_1e[dir],_21={};
_21[dir]={start:function(){
s.overflow="hidden";
if(s.visibility=="hidden"||s.display=="none"){
s[dir]="1px";
s.display="";
s.visibility="";
return 1;
}else{
var now=dojo.style(_1f,dir);
return Math.max(now,1);
}
},end:_20};
var _22=dojo.animateProperty(dojo.mixin({properties:_21},_1e));
return _22;
};
}
